export default {
    insertKey: function(config) {
        let configObj = JSON.parse(JSON.stringify(config));
        if(configObj.hasOwnProperty("indicators")) {
            for(let i = 0; i < configObj.indicators.length; i++) {
                configObj.indicators[i].key = Math.random().toString(36).substr(2);
                if(configObj.indicators[i].hasOwnProperty("filter") && configObj.indicators[i].filter.hasOwnProperty("rules")) {
                    for(let j = 0; j < configObj.indicators[i].filter.rules.length; j++) {
                        configObj.indicators[i].filter.rules[j].key = Math.random().toString(36).substr(2);
                    }
                }
            }
        }
        if(configObj.hasOwnProperty("filter") && configObj.filter.hasOwnProperty("rules")) {
            for(let i = 0; i < configObj.filter.rules.length; i++) {
                configObj.filter.rules[i].key = Math.random().toString(36).substr(2);
            }
        }
        return configObj;
    },
    deleteKey: function (config) {
        console.log(config)
        let configObj = JSON.parse(JSON.stringify(config));
        if(configObj.hasOwnProperty("indicators")) {
            for(let i = 0; i < configObj.indicators.length; i++) {
                delete configObj.indicators[i].key;
                if(configObj.indicators[i].hasOwnProperty("filter") && configObj.indicators[i].filter.hasOwnProperty("rules")) {
                    for(let j = 0; j < configObj.indicators[i].filter.rules.length; j++) {
                        delete configObj.indicators[i].filter.rules[j].key;
                    }
                }
            }
        }
        if(configObj.hasOwnProperty("filter") && configObj.filter.hasOwnProperty("rules")) {
            for(let i = 0; i < configObj.filter.rules.length; i++) {
                delete configObj.filter.rules[i].key;
            }
        }
        return configObj;
    }
}
